Inheritance diagram for I3DEditorHostPart:

Public Member Functions | |
| virtual void MCCOMAPI | SetPaneExtension (IDType paneExtension)=0 |
| virtual EPaneConfig MCCOMAPI | GetPaneConfig ()=0 |
| virtual void MCCOMAPI | SetPaneConfig (EPaneConfig config)=0 |
| virtual void MCCOMAPI | SetPaneArrayDimensions (uint32 x, uint32 y)=0 |
| virtual void MCCOMAPI | SetDefaultPaneCameraConfig ()=0 |
| virtual void MCCOMAPI | GetPanes (TMCCountedPtrArray< I3DEditorHostPanePart > &panes)=0 |
| virtual void MCCOMAPI | ShowSideToolbar (boolean doShowPaneModes, boolean doShowDisplayModes)=0 |
| virtual void MCCOMAPI | SetActionResponder (IMFResponder *responder)=0 |
| virtual void MCCOMAPI | AllocatePanes (uint32 numPanes)=0 |
| virtual void MCCOMAPI | GetWorkingBox (IWorkingBox **workingBox)=0 |
| Deprecated. | |
| virtual IWorkingBox *MCCOMAPI | GetWorkingBox () const =0 |
| Returns the working box that is associated with the part. | |
| virtual void MCCOMAPI | MapDrawingPlanes (boolean value)=0 |
| virtual boolean MCCOMAPI | AreDrawingPlanesMapped ()=0 |
| virtual boolean MCCOMAPI | IsCanonicalCamera (const I3DShCamera *camera)=0 |
| virtual void MCCOMAPI | GetCanonicalCameras (TMCCountedPtrArray< I3DShCamera > &canonicalCameras)=0 |
| virtual void MCCOMAPI | SetCanonicalCameras (const TMCCountedPtrArray< I3DShCamera > &inCameras)=0 |
| virtual void MCCOMAPI | GetClientCameras (TMCCountedPtrArray< I3DShCamera > &clientCameras)=0 |
| virtual void MCCOMAPI | SetClientCameras (const TMCCountedPtrArray< I3DShCamera > &inCameras)=0 |
| virtual void MCCOMAPI | GetCameraToolBar (IMFToolbarPart **outToolBar)=0 |
| virtual real MCCOMAPI | GetDefault2DZoom ()=0 |
| virtual void MCCOMAPI | SetDefault2DZoom (real default2DZoom)=0 |
| virtual void MCCOMAPI | SetTopLeftPopup (IMFMenu *popup)=0 |
| virtual void MCCOMAPI | EnableTrackingOptimizations (boolean inEnable)=0 |
| virtual boolean MCCOMAPI | IsGroundPlaneActivated ()=0 |
| virtual void MCCOMAPI | ActivateGroundPlane (boolean activate)=0 |
| virtual void MCCOMAPI | ToggleWorkingBoxPlane (int32 planeindex, boolean doInvalidate=true, boolean forceState=false, boolean shown=true)=0 |
| virtual void MCCOMAPI | ActivateWorkingBoxPlane (int32 planeindex)=0 |
| virtual void MCCOMAPI | BuildMenuBar ()=0 |
| virtual void MCCOMAPI | SetImmediateMode (boolean on)=0 |
| virtual void MCCOMAPI | SetCurrentCameraToDirectorCamera (int32 paneIndex)=0 |
| virtual void MCCOMAPI | GetAllPanes (TMCCountedPtrArray< I3DEditorHostPanePart > &panes)=0 |
| virtual void MCCOMAPI | GetCustomPositions (TMCArray< TSavedPosition > &customPositions)=0 |
| virtual void MCCOMAPI | SetCustomPositions (TMCArray< TSavedPosition > &customPositions)=0 |
| virtual void MCCOMAPI | SetInteractiveRendererToPane (const int32 paneIndex, I3DExRendererBox *newRenderer)=0 |
| virtual void MCCOMAPI | SetZoomValuesFromWorkingBoxSize (real32 maxSize)=0 |
| virtual void MCCOMAPI | RegisterListener (IChangeListener *listener)=0 |
| virtual void MCCOMAPI | UnregisterListener (IChangeListener *listener)=0 |
| virtual boolean MCCOMAPI | IsWorkingBoxPlaneShown (int32 planeindex)=0 |
| virtual void MCCOMAPI | UpdateWorkingBoxImages ()=0 |
| virtual void MCCOMAPI | SetExtraToolPart (IMFPart *inPart)=0 |
-Note: to use a local camera toolbar, in MCSketch:
If you create a modeler, you can use the 3DEditorHostPart in your windows. To include it, you must add a NodePart with the part extension '3dHO'. When you load the window (or dialog) from the resource, a 3DEditorHostPart will be created. You can then search that part by ID (usually the 'host' ID is used) and set the type of pane extension you want to use.
The initialisation code of your modeler could look like this:
void CreateWindows() { void* oldResources = NULL; gResourceUtilities->SetupComponentResources('modu',myModelerID, &oldResources); fModule->CreateWindowByResource(&fWindow,myWindowsResID,true); ThrowIfNil(fWindow); TMCCountedPtr<IMFPart> hostPart; fWindow->FindChildPartByID(&hostPart, 'host'); ThrowIfNil(hostPart); TMCCountedPtr<I3DEditorHostPart> my3DEditorHostPart; hostPart->QueryInterface(IID_I3DEditorHostPart, (void **)&my3DEditorHostPart); ThrowIfNil(my3DEditorHostPart); TMCCountedPtr<IMFResponder> actionResponder; fDocument->QueryInterface(IID_IMFResponder, (void**)&actionResponder); f3DEditorHostPart->SetActionResponder(actionResponder); my3DEditorHostPart->SetPaneExtension('xxxx'); ... //(allocate the panes...) }
|
|
|
|
|
Change the active plane of the working box.
|
|
|
Allocates the total number of panes that can be used with the 3DEditorHost. (Usually 4). Note that depending on the pane configuration (see SetPaneConfig()) they will not all be visible at the same time.
|
|
|
Returns true if the custom drawing planes are used instead of the working box ones.
|
|
|
Build the menu bar. |
|
|
Enable/Disable the tracking optimizations. When the optimizations are enabled the 3DEditorHost is not redrawed while the user is resizing the Window.
|
|
|
Fill an array with the panes of the editor host.
|
|
|
Returns a pointer to the toolbar that contains the camera tools (rotate, track...) It is identical to GetCameraToolWindow() except that it does an extra QueryInterface().
|
|
|
Returns the list of all the canonical cameras (director, top, left, front, ...)
|
|
|
Returns the list of all the client cameras. The client camera are all the cameras except the canonical cameras (see GetCanonicalCameras()).
|
|
|
Gets the saved position of the custom camera positions.
|
|
|
Returns the default 2D zoom. |
|
|
Returns the current pane configuration. See EPaneConfig for more info. |
|
|
Returns the list of visible panes. To get all the panes of the editorHostPart, use GetAllPanes(...)
|
|
|
Returns the working box that is associated with the part.
|
|
|
Deprecated.
|
|
|
Returns true if the camera is one of the default camera (director, top, left, front, ...)
|
|
|
|
|
|
Returns true if the given plane is shown
|
|
|
Set to true to use a custom drawing plane instead of the working box ones.
|
|
|
Register a listener. See messages above. Note : there is no channels, just 1 listener is stored.
|
|
|
Sets the action responder on the part. In the case of a modeler (or module) the action responder is usually the document associated with the module. You must call this function after creating a 3DEditorHost part to set the action responder for Undo/Redo (normally the document's responder)
|
|
|
Sets the list of all the canonical cameras (director, top, left, front, ...)
|
|
|
Sets the client cameras. (by opposition to canonical cameras).
|
|
|
Use the director camera as the current camera.
|
|
|
Set the saved position of the custom camera positions.
|
|
|
Sets the default 2D Zoom
|
|
|
Sets the default camera on the current panes. |
|
|
Adds an extra part to the side of the window (under the regular toolbars)
|
|
|
Turn on/off the immediate mode. The immediate mode is used for interactive manipulations by the user. When it is on, the rendering is blit directly to the screen without going through the back buffer.
|
|
||||||||||||
|
Sets a renderer to a particular pane.
|
|
||||||||||||
|
Sets the number of panes in the window rect.
|
|
|
Sets the current pane configuration. See EPaneConfig for more info.
|
|
|
Sets the ID of the part extension that is used as pane part. This part should implement the interface I3DEditorHostPanePart.
|
|
|
Sets the menu that is used at the top of left of each pane.
|
|
|
Sets the defaultZoom value of the 3D view so the working box will fit in the view when the zoom is set to 100%.
|
|
||||||||||||
|
Sets the visibility status of the tool bar on the side of the window (The toolbar that contains the part configurations and the rendering modes).
|
|
||||||||||||||||||||
|
Change the state of a plane of the working box.
|
|
|
Unegister a listener.
|
|
|
Update the rendering of the images attached to the working box |
1.4.5